[INFO] fetching crate critcmp 0.1.7...
[INFO] checking critcmp-0.1.7 against master#9610dfe5a9a731ced1ea4923ecbd0c57fe367898 for beta-170-4
[INFO] extracting crate critcmp 0.1.7 into /workspace/builds/worker-1-tc1/source
[INFO] validating manifest of crates.io crate critcmp 0.1.7 on toolchain 9610dfe5a9a731ced1ea4923ecbd0c57fe367898
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+9610dfe5a9a731ced1ea4923ecbd0c57fe367898" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate critcmp 0.1.7
[INFO] finished tweaking crates.io crate critcmp 0.1.7
[INFO] tweaked toml for crates.io crate critcmp 0.1.7 written to /workspace/builds/worker-1-tc1/source/Cargo.toml
[INFO] crate crates.io crate critcmp 0.1.7 already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+9610dfe5a9a731ced1ea4923ecbd0c57fe367898" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded tabwriter v1.2.1
[INFO] [stderr]   Downloaded grep-cli v0.1.5
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:5ff2268d62e97bff2cde7d5815dd6ed5b47097566f13b8d0ca110b04b60e07ed" "/opt/rustwide/cargo-home/bin/cargo" "+9610dfe5a9a731ced1ea4923ecbd0c57fe367898" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] a1ffc20bedeaf890da458dc3fd0ed74f362d9d2cc69393ab0ee5c8f0e0bc8f61
[INFO] running `Command { std: "docker" "start" "-a" "a1ffc20bedeaf890da458dc3fd0ed74f362d9d2cc69393ab0ee5c8f0e0bc8f61", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "a1ffc20bedeaf890da458dc3fd0ed74f362d9d2cc69393ab0ee5c8f0e0bc8f61", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "a1ffc20bedeaf890da458dc3fd0ed74f362d9d2cc69393ab0ee5c8f0e0bc8f61", kill_on_drop: false }`
[INFO] [stdout] a1ffc20bedeaf890da458dc3fd0ed74f362d9d2cc69393ab0ee5c8f0e0bc8f61
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:5ff2268d62e97bff2cde7d5815dd6ed5b47097566f13b8d0ca110b04b60e07ed" "/opt/rustwide/cargo-home/bin/cargo" "+9610dfe5a9a731ced1ea4923ecbd0c57fe367898" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] c8125f706127c16a85eb715ec133c1bc0b7d3785b94231132437fb2ae5bc5e80
[INFO] running `Command { std: "docker" "start" "-a" "c8125f706127c16a85eb715ec133c1bc0b7d3785b94231132437fb2ae5bc5e80", kill_on_drop: false }`
[INFO] [stderr]    Compiling memchr v2.3.4
[INFO] [stderr]    Compiling proc-macro2 v1.0.24
[INFO] [stderr]    Compiling syn v1.0.64
[INFO] [stderr]     Checking byteorder v1.4.3
[INFO] [stderr]    Compiling serde_derive v1.0.124
[INFO] [stderr]    Compiling libc v0.2.89
[INFO] [stderr]     Checking regex-syntax v0.6.23
[INFO] [stderr]    Compiling log v0.4.14
[INFO] [stderr]    Compiling ryu v1.0.5
[INFO] [stderr]    Compiling serde v1.0.124
[INFO] [stderr]     Checking unicode-width v0.1.8
[INFO] [stderr]    Compiling serde_json v1.0.64
[INFO] [stderr]     Checking itoa v0.4.7
[INFO] [stderr]     Checking termcolor v1.1.2
[INFO] [stderr]     Checking walkdir v2.3.1
[INFO] [stderr]     Checking textwrap v0.11.0
[INFO] [stderr]     Checking regex-automata v0.1.9
[INFO] [stderr]     Checking clap v2.33.3
[INFO] [stderr]     Checking aho-corasick v0.7.15
[INFO] [stderr]     Checking bstr v0.2.15
[INFO] [stderr]    Compiling quote v1.0.9
[INFO] [stderr]     Checking atty v0.2.14
[INFO] [stderr]     Checking regex v1.4.5
[INFO] [stderr]     Checking globset v0.4.6
[INFO] [stderr]     Checking tabwriter v1.2.1
[INFO] [stderr]     Checking grep-cli v0.1.5
[INFO] [stderr]     Checking critcmp v0.1.7 (/opt/rustwide/workdir)
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/main.rs:13:79
[INFO] [stdout]     |
[INFO] [stdout] 13  |     ($($tt:tt)*) => { Box::<dyn (::std::error::Error)>::from(format!($($tt)*)); }
[INFO] [stdout]     |                                                                               ^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/app.rs:141:13
[INFO] [stdout]     |
[INFO] [stdout] 141 |             fail!("could not find any benchmark data");
[INFO] [stdout]     |             ------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: `#[warn(semicolon_in_expressions_from_macros)]` on by default
[INFO] [stdout]     = note: this warning originates in the macro `err` which comes from the expansion of the macro `fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/main.rs:13:79
[INFO] [stdout]     |
[INFO] [stdout] 13  |       ($($tt:tt)*) => { Box::<dyn (::std::error::Error)>::from(format!($($tt)*)); }
[INFO] [stdout]     |                                                                                 ^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/app.rs:171:13
[INFO] [stdout]     |
[INFO] [stdout] 171 | /             fail!(
[INFO] [stdout] 172 | |                 "pattern '{}' has no capturing groups, by grouping \
[INFO] [stdout] 173 | |                  benchmarks by a regex requires the use of at least \
[INFO] [stdout] 174 | |                  one capturing group",
[INFO] [stdout] 175 | |                 pattern
[INFO] [stdout] 176 | |             );
[INFO] [stdout]     | |_____________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: this warning originates in the macro `err` which comes from the expansion of the macro `fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/main.rs:13:79
[INFO] [stdout]     |
[INFO] [stdout] 13  |       ($($tt:tt)*) => { Box::<dyn (::std::error::Error)>::from(format!($($tt)*)); }
[INFO] [stdout]     |                                                                                 ^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/app.rs:205:13
[INFO] [stdout]     |
[INFO] [stdout] 205 | /             fail!(
[INFO] [stdout] 206 | |                 "\
[INFO] [stdout] 207 | |                  no criterion data exists at {}\n\
[INFO] [stdout] 208 | |                  set a different target directory with --target-dir or \
[INFO] [stdout] ...   |
[INFO] [stdout] 211 | |                 crit_dir.display()
[INFO] [stdout] 212 | |             );
[INFO] [stdout]     | |_____________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: this warning originates in the macro `err` which comes from the expansion of the macro `fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/main.rs:13:79
[INFO] [stdout]     |
[INFO] [stdout] 13  |       ($($tt:tt)*) => { Box::<dyn (::std::error::Error)>::from(format!($($tt)*)); }
[INFO] [stdout]     |                                                                                 ^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/app.rs:240:21
[INFO] [stdout]     |
[INFO] [stdout] 240 | /                     fail!(
[INFO] [stdout] 241 | |                         "\
[INFO] [stdout] 242 | |                          could not find Criterion output directory\n\
[INFO] [stdout] 243 | |                          try using --target-dir or set CARGO_TARGET_DIR\
[INFO] [stdout] 244 | |                          "
[INFO] [stdout] 245 | |                     );
[INFO] [stdout]     | |_____________________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: this warning originates in the macro `err` which comes from the expansion of the macro `fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/main.rs:13:79
[INFO] [stdout]     |
[INFO] [stdout] 13  |     ($($tt:tt)*) => { Box::<dyn (::std::error::Error)>::from(format!($($tt)*)); }
[INFO] [stdout]     |                                                                               ^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/data.rs:102:17
[INFO] [stdout]     |
[INFO] [stdout] 102 |                 err!("{}: {}", parent.display(), err)
[INFO] [stdout]     |                 ------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: macro invocations at the end of a block are treated as expressions
[INFO] [stdout]     = note: to ignore the value produced by the macro, add a semicolon after the invocation of `err`
[INFO] [stdout]     = note: this warning originates in the macro `err` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/main.rs:13:79
[INFO] [stdout]     |
[INFO] [stdout] 13  |     ($($tt:tt)*) => { Box::<dyn (::std::error::Error)>::from(format!($($tt)*)); }
[INFO] [stdout]     |                                                                               ^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/data.rs:104:17
[INFO] [stdout]     |
[INFO] [stdout] 104 |                 err!("unknown path: {}", err)
[INFO] [stdout]     |                 ----------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: macro invocations at the end of a block are treated as expressions
[INFO] [stdout]     = note: to ignore the value produced by the macro, add a semicolon after the invocation of `err`
[INFO] [stdout]     = note: this warning originates in the macro `err` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/main.rs:13:79
[INFO] [stdout]     |
[INFO] [stdout] 13  |     ($($tt:tt)*) => { Box::<dyn (::std::error::Error)>::from(format!($($tt)*)); }
[INFO] [stdout]     |                                                                               ^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/data.rs:127:13
[INFO] [stdout]     |
[INFO] [stdout] 127 |             err!("{}: could not find parent dir", path.display())
[INFO] [stdout]     |             ----------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: macro invocations at the end of a block are treated as expressions
[INFO] [stdout]     = note: to ignore the value produced by the macro, add a semicolon after the invocation of `err`
[INFO] [stdout]     = note: this warning originates in the macro `err` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/main.rs:13:79
[INFO] [stdout]     |
[INFO] [stdout] 13  |     ($($tt:tt)*) => { Box::<dyn (::std::error::Error)>::from(format!($($tt)*)); }
[INFO] [stdout]     |                                                                               ^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/data.rs:133:17
[INFO] [stdout]     |
[INFO] [stdout] 133 |                 err!("{}: could not find baseline name", path.display())
[INFO] [stdout]     |                 -------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: macro invocations at the end of a block are treated as expressions
[INFO] [stdout]     = note: to ignore the value produced by the macro, add a semicolon after the invocation of `err`
[INFO] [stdout]     = note: this warning originates in the macro `err` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/main.rs:13:79
[INFO] [stdout]     |
[INFO] [stdout] 13  |     ($($tt:tt)*) => { Box::<dyn (::std::error::Error)>::from(format!($($tt)*)); }
[INFO] [stdout]     |                                                                               ^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/data.rs:212:13
[INFO] [stdout]     |
[INFO] [stdout] 212 |             err!("{}: {}", name, err)
[INFO] [stdout]     |             ------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: macro invocations at the end of a block are treated as expressions
[INFO] [stdout]     = note: to ignore the value produced by the macro, add a semicolon after the invocation of `err`
[INFO] [stdout]     = note: this warning originates in the macro `err` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/main.rs:13:79
[INFO] [stdout]     |
[INFO] [stdout] 13  |     ($($tt:tt)*) => { Box::<dyn (::std::error::Error)>::from(format!($($tt)*)); }
[INFO] [stdout]     |                                                                               ^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/data.rs:214:13
[INFO] [stdout]     |
[INFO] [stdout] 214 |             err!("{}: {}", path.display(), err)
[INFO] [stdout]     |             ----------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: macro invocations at the end of a block are treated as expressions
[INFO] [stdout]     = note: to ignore the value produced by the macro, add a semicolon after the invocation of `err`
[INFO] [stdout]     = note: this warning originates in the macro `err` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/main.rs:13:79
[INFO] [stdout]     |
[INFO] [stdout] 13  |     ($($tt:tt)*) => { Box::<dyn (::std::error::Error)>::from(format!($($tt)*)); }
[INFO] [stdout]     |                                                                               ^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/data.rs:220:13
[INFO] [stdout]     |
[INFO] [stdout] 220 |             err!("{}: {}", name, err)
[INFO] [stdout]     |             ------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: macro invocations at the end of a block are treated as expressions
[INFO] [stdout]     = note: to ignore the value produced by the macro, add a semicolon after the invocation of `err`
[INFO] [stdout]     = note: this warning originates in the macro `err` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/main.rs:13:79
[INFO] [stdout]     |
[INFO] [stdout] 13  |     ($($tt:tt)*) => { Box::<dyn (::std::error::Error)>::from(format!($($tt)*)); }
[INFO] [stdout]     |                                                                               ^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/data.rs:222:13
[INFO] [stdout]     |
[INFO] [stdout] 222 |             err!("{}: {}", path.display(), err)
[INFO] [stdout]     |             ----------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: macro invocations at the end of a block are treated as expressions
[INFO] [stdout]     = note: to ignore the value produced by the macro, add a semicolon after the invocation of `err`
[INFO] [stdout]     = note: this warning originates in the macro `err` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]   --> src/main.rs:17:48
[INFO] [stdout]    |
[INFO] [stdout] 17 |     ($($tt:tt)*) => { return Err(err!($($tt)*)); }
[INFO] [stdout]    |                                                ^
[INFO] [stdout] ...
[INFO] [stdout] 48 |             None => fail!("failed to find baseline '{}'", baseline),
[INFO] [stdout]    |                     ----------------------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]    = note: this warning originates in the macro `fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]   --> src/main.rs:13:79
[INFO] [stdout]    |
[INFO] [stdout] 13 |     ($($tt:tt)*) => { Box::<dyn (::std::error::Error)>::from(format!($($tt)*)); }
[INFO] [stdout]    |                                                                               ^
[INFO] [stdout] ...
[INFO] [stdout] 48 |             None => fail!("failed to find baseline '{}'", baseline),
[INFO] [stdout]    |                     ----------------------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]    = note: this warning originates in the macro `err` which comes from the expansion of the macro `fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]   --> src/main.rs:13:79
[INFO] [stdout]    |
[INFO] [stdout] 13 |     ($($tt:tt)*) => { Box::<dyn (::std::error::Error)>::from(format!($($tt)*)); }
[INFO] [stdout]    |                                                                               ^
[INFO] [stdout] ...
[INFO] [stdout] 64 |         fail!("no benchmark comparisons to show");
[INFO] [stdout]    |         ----------------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]    = note: this warning originates in the macro `err` which comes from the expansion of the macro `fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/main.rs:13:79
[INFO] [stdout]     |
[INFO] [stdout] 13  |     ($($tt:tt)*) => { Box::<dyn (::std::error::Error)>::from(format!($($tt)*)); }
[INFO] [stdout]     |                                                                               ^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/app.rs:141:13
[INFO] [stdout]     |
[INFO] [stdout] 141 |             fail!("could not find any benchmark data");
[INFO] [stdout]     |             ------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: `#[warn(semicolon_in_expressions_from_macros)]` on by default
[INFO] [stdout]     = note: this warning originates in the macro `err` which comes from the expansion of the macro `fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/main.rs:13:79
[INFO] [stdout]     |
[INFO] [stdout] 13  |       ($($tt:tt)*) => { Box::<dyn (::std::error::Error)>::from(format!($($tt)*)); }
[INFO] [stdout]     |                                                                                 ^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/app.rs:171:13
[INFO] [stdout]     |
[INFO] [stdout] 171 | /             fail!(
[INFO] [stdout] 172 | |                 "pattern '{}' has no capturing groups, by grouping \
[INFO] [stdout] 173 | |                  benchmarks by a regex requires the use of at least \
[INFO] [stdout] 174 | |                  one capturing group",
[INFO] [stdout] 175 | |                 pattern
[INFO] [stdout] 176 | |             );
[INFO] [stdout]     | |_____________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: this warning originates in the macro `err` which comes from the expansion of the macro `fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/main.rs:13:79
[INFO] [stdout]     |
[INFO] [stdout] 13  |       ($($tt:tt)*) => { Box::<dyn (::std::error::Error)>::from(format!($($tt)*)); }
[INFO] [stdout]     |                                                                                 ^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/app.rs:205:13
[INFO] [stdout]     |
[INFO] [stdout] 205 | /             fail!(
[INFO] [stdout] 206 | |                 "\
[INFO] [stdout] 207 | |                  no criterion data exists at {}\n\
[INFO] [stdout] 208 | |                  set a different target directory with --target-dir or \
[INFO] [stdout] ...   |
[INFO] [stdout] 211 | |                 crit_dir.display()
[INFO] [stdout] 212 | |             );
[INFO] [stdout]     | |_____________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: this warning originates in the macro `err` which comes from the expansion of the macro `fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/main.rs:13:79
[INFO] [stdout]     |
[INFO] [stdout] 13  |       ($($tt:tt)*) => { Box::<dyn (::std::error::Error)>::from(format!($($tt)*)); }
[INFO] [stdout]     |                                                                                 ^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/app.rs:240:21
[INFO] [stdout]     |
[INFO] [stdout] 240 | /                     fail!(
[INFO] [stdout] 241 | |                         "\
[INFO] [stdout] 242 | |                          could not find Criterion output directory\n\
[INFO] [stdout] 243 | |                          try using --target-dir or set CARGO_TARGET_DIR\
[INFO] [stdout] 244 | |                          "
[INFO] [stdout] 245 | |                     );
[INFO] [stdout]     | |_____________________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: this warning originates in the macro `err` which comes from the expansion of the macro `fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/main.rs:13:79
[INFO] [stdout]     |
[INFO] [stdout] 13  |     ($($tt:tt)*) => { Box::<dyn (::std::error::Error)>::from(format!($($tt)*)); }
[INFO] [stdout]     |                                                                               ^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/data.rs:102:17
[INFO] [stdout]     |
[INFO] [stdout] 102 |                 err!("{}: {}", parent.display(), err)
[INFO] [stdout]     |                 ------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: macro invocations at the end of a block are treated as expressions
[INFO] [stdout]     = note: to ignore the value produced by the macro, add a semicolon after the invocation of `err`
[INFO] [stdout]     = note: this warning originates in the macro `err` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/main.rs:13:79
[INFO] [stdout]     |
[INFO] [stdout] 13  |     ($($tt:tt)*) => { Box::<dyn (::std::error::Error)>::from(format!($($tt)*)); }
[INFO] [stdout]     |                                                                               ^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/data.rs:104:17
[INFO] [stdout]     |
[INFO] [stdout] 104 |                 err!("unknown path: {}", err)
[INFO] [stdout]     |                 ----------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: macro invocations at the end of a block are treated as expressions
[INFO] [stdout]     = note: to ignore the value produced by the macro, add a semicolon after the invocation of `err`
[INFO] [stdout]     = note: this warning originates in the macro `err` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/main.rs:13:79
[INFO] [stdout]     |
[INFO] [stdout] 13  |     ($($tt:tt)*) => { Box::<dyn (::std::error::Error)>::from(format!($($tt)*)); }
[INFO] [stdout]     |                                                                               ^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/data.rs:127:13
[INFO] [stdout]     |
[INFO] [stdout] 127 |             err!("{}: could not find parent dir", path.display())
[INFO] [stdout]     |             ----------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: macro invocations at the end of a block are treated as expressions
[INFO] [stdout]     = note: to ignore the value produced by the macro, add a semicolon after the invocation of `err`
[INFO] [stdout]     = note: this warning originates in the macro `err` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/main.rs:13:79
[INFO] [stdout]     |
[INFO] [stdout] 13  |     ($($tt:tt)*) => { Box::<dyn (::std::error::Error)>::from(format!($($tt)*)); }
[INFO] [stdout]     |                                                                               ^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/data.rs:133:17
[INFO] [stdout]     |
[INFO] [stdout] 133 |                 err!("{}: could not find baseline name", path.display())
[INFO] [stdout]     |                 -------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: macro invocations at the end of a block are treated as expressions
[INFO] [stdout]     = note: to ignore the value produced by the macro, add a semicolon after the invocation of `err`
[INFO] [stdout]     = note: this warning originates in the macro `err` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/main.rs:13:79
[INFO] [stdout]     |
[INFO] [stdout] 13  |     ($($tt:tt)*) => { Box::<dyn (::std::error::Error)>::from(format!($($tt)*)); }
[INFO] [stdout]     |                                                                               ^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/data.rs:212:13
[INFO] [stdout]     |
[INFO] [stdout] 212 |             err!("{}: {}", name, err)
[INFO] [stdout]     |             ------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: macro invocations at the end of a block are treated as expressions
[INFO] [stdout]     = note: to ignore the value produced by the macro, add a semicolon after the invocation of `err`
[INFO] [stdout]     = note: this warning originates in the macro `err` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/main.rs:13:79
[INFO] [stdout]     |
[INFO] [stdout] 13  |     ($($tt:tt)*) => { Box::<dyn (::std::error::Error)>::from(format!($($tt)*)); }
[INFO] [stdout]     |                                                                               ^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/data.rs:214:13
[INFO] [stdout]     |
[INFO] [stdout] 214 |             err!("{}: {}", path.display(), err)
[INFO] [stdout]     |             ----------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: macro invocations at the end of a block are treated as expressions
[INFO] [stdout]     = note: to ignore the value produced by the macro, add a semicolon after the invocation of `err`
[INFO] [stdout]     = note: this warning originates in the macro `err` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/main.rs:13:79
[INFO] [stdout]     |
[INFO] [stdout] 13  |     ($($tt:tt)*) => { Box::<dyn (::std::error::Error)>::from(format!($($tt)*)); }
[INFO] [stdout]     |                                                                               ^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/data.rs:220:13
[INFO] [stdout]     |
[INFO] [stdout] 220 |             err!("{}: {}", name, err)
[INFO] [stdout]     |             ------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: macro invocations at the end of a block are treated as expressions
[INFO] [stdout]     = note: to ignore the value produced by the macro, add a semicolon after the invocation of `err`
[INFO] [stdout]     = note: this warning originates in the macro `err` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/main.rs:13:79
[INFO] [stdout]     |
[INFO] [stdout] 13  |     ($($tt:tt)*) => { Box::<dyn (::std::error::Error)>::from(format!($($tt)*)); }
[INFO] [stdout]     |                                                                               ^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/data.rs:222:13
[INFO] [stdout]     |
[INFO] [stdout] 222 |             err!("{}: {}", path.display(), err)
[INFO] [stdout]     |             ----------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: macro invocations at the end of a block are treated as expressions
[INFO] [stdout]     = note: to ignore the value produced by the macro, add a semicolon after the invocation of `err`
[INFO] [stdout]     = note: this warning originates in the macro `err` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]   --> src/main.rs:17:48
[INFO] [stdout]    |
[INFO] [stdout] 17 |     ($($tt:tt)*) => { return Err(err!($($tt)*)); }
[INFO] [stdout]    |                                                ^
[INFO] [stdout] ...
[INFO] [stdout] 48 |             None => fail!("failed to find baseline '{}'", baseline),
[INFO] [stdout]    |                     ----------------------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]    = note: this warning originates in the macro `fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]   --> src/main.rs:13:79
[INFO] [stdout]    |
[INFO] [stdout] 13 |     ($($tt:tt)*) => { Box::<dyn (::std::error::Error)>::from(format!($($tt)*)); }
[INFO] [stdout]    |                                                                               ^
[INFO] [stdout] ...
[INFO] [stdout] 48 |             None => fail!("failed to find baseline '{}'", baseline),
[INFO] [stdout]    |                     ----------------------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]    = note: this warning originates in the macro `err` which comes from the expansion of the macro `fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]   --> src/main.rs:13:79
[INFO] [stdout]    |
[INFO] [stdout] 13 |     ($($tt:tt)*) => { Box::<dyn (::std::error::Error)>::from(format!($($tt)*)); }
[INFO] [stdout]    |                                                                               ^
[INFO] [stdout] ...
[INFO] [stdout] 64 |         fail!("no benchmark comparisons to show");
[INFO] [stdout]    |         ----------------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]    = note: this warning originates in the macro `err` which comes from the expansion of the macro `fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 15 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 15 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished dev [unoptimized + debuginfo] target(s) in 6.26s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: critcmp v0.1.7 (/opt/rustwide/workdir)
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 2`
[INFO] running `Command { std: "docker" "inspect" "c8125f706127c16a85eb715ec133c1bc0b7d3785b94231132437fb2ae5bc5e80", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "c8125f706127c16a85eb715ec133c1bc0b7d3785b94231132437fb2ae5bc5e80", kill_on_drop: false }`
[INFO] [stdout] c8125f706127c16a85eb715ec133c1bc0b7d3785b94231132437fb2ae5bc5e80
